package com.witdata.common.service;

import com.witdata.common.domain.dto.RoleDto;
import com.witdata.common.domain.dto.UserDto;
import com.witdata.common.domain.vo.UserVo;
import org.springframework.web.multipart.MultipartFile;

import java.util.List;

public interface UserService {

    UserDto getUserDtoByUsername(String username);

    UserDto getUserInfoById(Long userId);

    UserVo getUserVoById(Long userId);

    List<UserVo> getUserList();

    List<UserVo> getUserListBySleep();

    List<UserVo> searchUserList(String keyword);

    void follow(Long followeeId);

    List<UserDto> getUserInfoList();

    void deleteUserByUserId(Long userId);

    void editUserPasswordByUserId(UserDto userDto);

    void editUserInfoByUserId(UserDto userDto);

    void uploadAvatar(MultipartFile avatar);

    List<RoleDto> getRoleByUserId(Long userId);
}
